Analysis of Software Quality Attributes Through Aspect-Oriented Programming
نویسندگان
چکیده
Design and development of software is difficult task due to the changing requirements of usres. To develop good quality software, our main focus is on analysis of quality attributes according to the users’ requirement, but it increases the complexity. So it’s a complex task to establish a relationship between users’ requirements and quality attributes due to the frequent change in requirements. However, we do not have systematic approaches to design software considering quality attributes and requirements. Throughout the history of software development, new development approches were developed to deal with the chaninging requiremens and ever-growing complexity of software. The object-oriented paradigm approach allows programmers to decompose high level requirements into a set of functional modules. The problem is that Object-Oriented Programming (OOP) does not offer a systematic and elegant way to recompose those modules to maintain the the quality by ensuring the modular continuity. This problem of OOP gave birth to a new paradigm: the Aspect-Oriented Programming (AOP). AOP approach is used to modularize the crosscutting concern and provide better analysis of quality attributes like performance, reliability, availability, reusability, testability modularization and maintainability as compare to OOP in the form of aspects. This paper presents modified analysis process in which designer and developer can separate the aspects related to quality attributes by using AOP and get feedbacks to improve the quality attributes by providing a modularization way to separate crosscutting concerns from noncrosscutting ones. This helps in developing software product more efficiently. Index Terms – Object, aspect, analysis, quality attributes, aspect-oriented programming, class, concern, analysis process. —————————— ——————————
منابع مشابه
A Cohesion Measure for Aspects
Aspect-Oriented Software Development is a promising new software engineering paradigm. It promotes, in particular, improved separation of crosscutting concerns into single units called aspects. AspectJ, the most used aspect-oriented programming language, represents an extension of Java. In fact, existing objectoriented programming languages suffer from a serious limitation in modularizing adequ...
متن کاملAspect-oriented Software Quality Model: the Aosq Model
Nowadays, software development has become more complex and dynamic; they are expected more flexible, scalable and reusable. Under the umbrella of aspect, Aspect-Oriented Software Development (AOSD) is relatively a modern programming paradigm to improve modularity in software development. Using Aspect-Oriented Programming (AOP) language to implements crosscutting concerns through the introductio...
متن کاملCohesion and coupling measures for aspect oriented systems
Software metrics aim to measure the inherent complexity of software systems with a view toward predicting the overall project cost and evaluating the quality and effectiveness of the design. Aspect Oriented Software design is an emerging paradigm that provides new mechanisms to support the modularization of concerns, which otherwise would crosscut the OO system decomposition. There are various ...
متن کاملOn Aspect-Oriented Design: An Approach to Designing Quality Attributes
It is difficult to design software to meet its goal on quality attributes, because there are many factors related to quality attributes, and the relationships between these factors and quality attributes are quite complicated. However, we do not have a systematic way to design software considering quality attributes. Consequently, we have many troubles in the attainment of required quality attr...
متن کاملA cohesion measure for C in the context of an AOP paradigm
Cohesion measures the relative functional strength of a module and impacts the internal attribute of a function such as modularity. Modularity has become an accepted approach in every engineering discipline. The concept of modular design has considerably reduced the complexity of software design. It represents the strength of bond between the internal elements of the modules. To achieve effecti...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2013